package cn.com.headfree.vo.simple;

import cn.com.headfree.util.SysDictionaryUtil;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang.StringUtils;

import java.text.SimpleDateFormat;
import java.util.Date;

public class EducateInfoVo {

    private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

    /**
     * 学历取得时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date acquTime;

    private String acquTimeStr;
    /**
     * 学习开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date startTime;

    private String startTimeStr;

    /**
     * 学习结束时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date endTime;

    private String endTimeStr;

    /**
     * 毕业院校
     */
    private String gradSchool;
    /**
     * 院校类别
     */
    private String schoolType;

    /**
     * 所学专业
     */
    private String major;
    /**
     * 学历名称
     */
    private String educName;
    /**
     * 学位名称
     */
    private String degreeName;
    /**
     * 是否继续教育
     */
    private String isContEduc;
    /**
     * 人资编号
     */
    private String erpNo;
    /**
     * 身份证号
     */
    private String idCardNo;
    /**
     * 创建者id
     */
    private String createrId;
    /**
     * 创建者姓名
     */
    private String createrName;
    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;
    /**
     * 更新者id
     */
    private String updaterId;
    /**
     * 更新者姓名
     */
    private String updaterName;
    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;
    /**
     * 0:未删除1：已删除
     */
    private Integer delSign;
    /**
     * 是否有效数据(0:有效，1:无效)
     */
    private Integer isValid;
    /**
     * 审核状态
     */
    private Integer auditStatu;

    /**
     * 原始数据ID
     */
    private String orignalId;

    /**
     * 姓名
     */
    private String userName;

    private String id;

    public String getAcquTimeStr() {
        return acquTimeStr;
    }

    public void setAcquTimeStr(String acquTimeStr) {
        if (StringUtils.isNotBlank(acquTimeStr)) {
            this.acquTimeStr = acquTimeStr.split(" ")[0];
        } else {
            this.acquTimeStr = acquTimeStr;
        }
    }

    public String getStartTimeStr() {
        return startTimeStr;
    }

    public void setStartTimeStr(String startTimeStr) {
        if (StringUtils.isNotBlank(startTimeStr)) {
            this.startTimeStr = startTimeStr.split(" ")[0];
        } else {
            this.startTimeStr = startTimeStr;
        }
    }

    public String getEndTimeStr() {
        return endTimeStr;
    }

    public void setEndTimeStr(String endTimeStr) {
        if (StringUtils.isNotBlank(endTimeStr)) {
            this.endTimeStr = endTimeStr.split(" ")[0];
        } else {
            this.endTimeStr = endTimeStr;
        }
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getOrignalId() {
        return orignalId;
    }

    public void setOrignalId(String orignalId) {
        this.orignalId = orignalId;
    }

    /**
     * 设置：学历取得时间
     */
    public void setAcquTime(Date acquTime) {
        this.acquTime = acquTime;
        if (acquTime!=null){
            this.acquTimeStr=sdf.format(acquTime).split(" ")[0];
        }
    }

    /**
     * 获取：学历取得时间
     */
    public Date getAcquTime() {
        return acquTime;
    }

    /**
     * 设置：毕业院校
     */
    public void setGradSchool(String gradSchool) {
        this.gradSchool = gradSchool;
    }

    /**
     * 获取：毕业院校
     */
    public String getGradSchool() {
        return gradSchool;
    }

    /**
     * 设置：院校类别
     */
    public void setSchoolType(String schoolType) {
        this.schoolType = schoolType;
//        this.schoolType = SysDictionaryUtil.getNameByValue("CollegeCategory",schoolType);;
    }

    /**
     * 获取：院校类别
     */
    public String getSchoolType() {
        return schoolType;
    }

    /**
     * 设置：所学专业
     */
    public void setMajor(String major) {
        this.major = major;
    }

    /**
     * 获取：所学专业
     */
    public String getMajor() {
        return major;
    }

    /**
     * 设置：学历名称
     */
    public void setEducName(String educName) {
        this.educName = educName;
//        this.educName = SysDictionaryUtil.getNameByValue("PersonnelQualifications",educName);;
    }

    /**
     * 获取：学历名称
     */
    public String getEducName() {
        return educName;
    }

    /**
     * 设置：学位名称
     */
    public void setDegreeName(String degreeName) {
        this.degreeName = degreeName;
//        this.degreeName = SysDictionaryUtil.getNameByValue("AcademicDegree",degreeName);;
    }

    /**
     * 获取：学位名称
     */
    public String getDegreeName() {
        return degreeName;
    }

    /**
     * 设置：是否继续教育
     */
    public void setIsContEduc(String isContEduc) {
        if ("0".equals(isContEduc)) {
            this.isContEduc = "是";
        } else if ("1".equals(isContEduc)) {
            this.isContEduc = "否";
        } else {
            this.isContEduc = isContEduc;
        }

    }

    /**
     * 获取：是否继续教育
     */
    public String getIsContEduc() {
        return isContEduc;
    }

    /**
     * 设置：人资编号
     */
    public void setErpNo(String erpNo) {
        this.erpNo = erpNo;
    }

    /**
     * 获取：人资编号
     */
    public String getErpNo() {
        return erpNo;
    }

    /**
     * 设置：身份证号
     */
    public void setIdCardNo(String idCardNo) {
        this.idCardNo = idCardNo;
    }

    /**
     * 获取：身份证号
     */
    public String getIdCardNo() {
        return idCardNo;
    }

    /**
     * 设置：创建者id
     */
    public void setCreaterId(String createrId) {
        this.createrId = createrId;
    }

    /**
     * 获取：创建者id
     */
    public String getCreaterId() {
        return createrId;
    }

    /**
     * 设置：创建者姓名
     */
    public void setCreaterName(String createrName) {
        this.createrName = createrName;
    }

    /**
     * 获取：创建者姓名
     */
    public String getCreaterName() {
        return createrName;
    }

    /**
     * 设置：创建时间
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * 获取：创建时间
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * 设置：更新者id
     */
    public void setUpdaterId(String updaterId) {
        this.updaterId = updaterId;
    }

    /**
     * 获取：更新者id
     */
    public String getUpdaterId() {
        return updaterId;
    }

    /**
     * 设置：更新者姓名
     */
    public void setUpdaterName(String updaterName) {
        this.updaterName = updaterName;
    }

    /**
     * 获取：更新者姓名
     */
    public String getUpdaterName() {
        return updaterName;
    }

    /**
     * 设置：更新时间
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    /**
     * 获取：更新时间
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    /**
     * 设置：0:未删除1：已删除
     */
    public void setDelSign(Integer delSign) {
        this.delSign = delSign;
    }

    /**
     * 获取：0:未删除1：已删除
     */
    public Integer getDelSign() {
        return delSign;
    }

    /**
     * 设置：是否有效数据(0:有效，1:无效)
     */
    public void setIsValid(Integer isValid) {
        this.isValid = isValid;
    }

    /**
     * 获取：是否有效数据(0:有效，1:无效)
     */
    public Integer getIsValid() {
        return isValid;
    }

    /**
     * 设置：审核状态
     */
    public void setAuditStatu(Integer auditStatu) {
        this.auditStatu = auditStatu;
    }

    /**
     * 获取：审核状态
     */
    public Integer getAuditStatu() {
        return auditStatu;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
        if (startTime!=null){
            this.startTimeStr=sdf.format(startTime).split(" ")[0];
        }
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
        if (endTime!=null){
            this.endTimeStr=sdf.format(endTime).split(" ")[0];
        }
    }

}
